package cn.livingCloud.service;

import cn.livingCloud.dto.*;
import cn.livingCloud.entity.core.Employee;

import java.util.List;

/**
 * Created by 唐旭 on 2016/5/30.
 */
public interface EmployeeService {

    Employee getEmployee(String employeeUuid);

    void loadEmployeeListDto(EmployeeListDto listDto);

    void loadEmployeeFromDto(EmployeeFormDto employeeFormDto);

    void edit(EmployeeFormDto formDto);

    void delete(String uuid);

    EmployeeBindMemberDto loadBindMemberDto(String employeeUuid);

    /**
     * 检查此用户是否绑定过微信信息
     *
     * @param memberUuid 粉丝UUID
     * @return true:已绑定,false:未绑定
     */
    boolean checkMemberBound(String memberUuid);

    void bindMember(EmployeeBindMemberDto formDto);

    List<EmployeeJsonDto> findEmployees(String key);

    Employee loadEmployeeByMember(String uuid);

    EmployeeRelieveMemberDto loadEmployeeRelieveMemberDto(String employeeUuid);

    JsonDto RelieveMember(EmployeeRelieveMemberDto formDto);
}
